文档

基于ContainerOS制作自定义镜像

更新时间:

在某些特定业务场景下,公共镜像无法完全满足需求。因此需要创建针对特定业务场景的、高度定制的ContainerOS镜像。本文档将为您介绍整个自定义镜像的制作流程,确保能够高效地生成符合特定需求的ContainerOS镜像。

基于ContainerOS镜像模板创建自定义镜像

本文以ContainerOS公共镜像举例,镜像ID为lifsea_3_x64_10G_containerd_1_6_28_alibase_20240202.vhd。

  1. 登录ECS管理控制台

  2. 在左侧导航栏,选择部署与弹性 > icon1 > 镜像构建

  3. 在页面左侧顶部,选择目标资源所在的资源组和地域。地域

  4. 镜像构建页面,单击创建镜像模板

    如果您第一次访问镜像构建服务,将进入镜像构建欢迎页,您需要先单击立即体验进入镜像构建页面。

  5. 创建镜像模板页面,设置相关参数,然后单击确定。更多信息,请参见配置项说明

    在ContainerOS中安装Vim软件包的Dockerfile示例如下:

    FROM IMAGE:lifsea_3_x64_10G_containerd_1_6_28_alibase_20240202.vhd
    RUN  lifseacli pkg install vim
    RUN  rm -rf /var/ignition.booted

    关于如何在ContainerOS中安装软件包的操作,请参见如何在ContainerOS中安装、升级软件包

    更多Dockerfile模板指令集,请参见镜像构建服务(ImageBuilder)指令集

    重要

    为了确保使用自定义镜像创建的节点池能够正常启动,请务必删除/var/ignition.booted文件。

  6. 创建成功后,单击镜像ID可跳转至镜像构建页面,在此可以查看构建历史模板信息

    镜像创建完成后,您可以通过控制台左侧实例与镜像 > 镜像页面查看已创建的自定义镜像。

后续操作

您可以通过自定义镜像进行集群创建,快速上线产品业务和部署业务场景。使用自定义镜像创建ACK集群,请参见使用自定义镜像创建ACK集群。也可以选择自定义镜像进行集群扩容,请参见扩缩容ACK集群的节点

说明

您可以通过提交工单申请开通自定义镜像选择实例自定义数据功能。

常见问题

为什么不使用Packer的方式创建自定义镜像?

为了减少系统被攻击的风险并提升系统的整体安全性能,ContainerOS已经移除了OpenSSH组件。由Packer构建自定义镜像的过程中要求通过SSH协议连接到基础镜像,因此在ContainerOS中不能使用Packer进行自定义镜像的构建。

  • 本页导读